查看原文
其他

2020年最具“钱途”的编程语言

洛逸 21CTO 2020-11-17

对编程语言进行比较是一件复杂的事情,有许多图片/笑话试图表现不同的编程语言。简单来讲,编程语言能让人类能够对机器控制的更好,因此很自然有这么多编程语言出现,让人们对其机器处理更强大、简单和从容。


也正因为这些原因,这个星球出现了数百种编程语言,其中有一些编程语言现在已不复使用,或在未来几年会被淘汰。还有一些语言将证明在未来或几年中继久使用,还有有新的编程语言涌现并希望得到开发者的接受和喜欢。


本文将介绍顶尖编程语言的发展趋势,相信这些趋势在2020年会再继续。为了预测趋2020年编程语言趋势,本文采用了不同编程语言的数据调查、统计根据、搜索结果和薪酬趋势。我们将帮助初学者选择合适的编程语言学习和深入,这有助于随时切换到另一种语言或继续更专业的使用该语言。


在下面的内容中,我们准备了两个表,总结了过去五年来(2015-2019)语言的发展趋势。该数据来自Stackoverflow的热点语言调查。


为了更清楚准确地理解,我将编程语言分为两组,第一组是2000年以前发布的语言,第二组是2000年以后的语言。选择2000年只是作为随机边界,但对于理解这两组的编程趋势有帮助。该表还列出了这些编程或脚本语言的起源年份与主要目标。


语言起源2015年20162017年20182019主要目标
Javascript1995年54.4%55.4%62.5%71.5%67.8%Web开发,动态内容,客户端和服务器端
Java1995年37.4%36.3%39.7%45.4%41.1%企业应用
Bash/Shell1971年至1979年  -  -  -40.4%36.6%自动化和系统管理
Python1991年23.8%24.9%32.0%37.9%41.7%通用用途
PHP1995年29.7%25.9%28.1%31.4%26.4%Web开发,服务器端
C ++1980至83年20.6%19.4%22.3%24.6%23.5%通用用途
C1972年16.4%15.5%19.0%22.1%20.6%通用,底层编程
Ruby1995年8%8.9%9.1%10.3%8.4%Web开发
R1993年  -  -4.5%6.0%5.8%统计计算
Objective-C1986年7.8%6.5%6.4%7.3%4.8%通用用途

总结&观察:


除了Python语言外,从2018年到2019年所有语言的流行度都在下降。


Python


Python是自过去五年以来不断上升的唯一语言。它是一种通用语言,因此有人希望在2020年只学习一门编程,并希望涵盖最多的软件开发领域,可以选择Python 。


Java


Java在2019年排名有所下降,原因是Kotlin在Android平台上获得了普及。

Java是编程语言中是个很好的选择,但现在它在Oracle旗下,谷歌正在推广Kotlin,这使用Kotlin处于冲突区域。事实上,由于其开发人员遗留的基础框架和应用程序,大多数的公司仍在使用并继续使用Java。


C / C ++


C和C ++在市场中保持着大约20%份额,由于其固有的功能与历史遗留系统,它将会长期存在。


JavaScript


JavaScript受欢迎程可归功于流行的JavaScript库以及node.js等框架的增长。JS曾经只是做动态网站的语言,由于其开发积极活跃,Mozilla的支持,它或将成为未来几年的首选,包括库和框架。如果有人想要进行Web开发,那么javascript是必须要学的。


R


R在近年来受到欢迎,原因在于大数据分析的增长与普及。它被数据科学家经常使用,但与Python相比,后者已经成为通用语言,但R有拥有大量数据科学库和模块,也有不少活跃的开发人员。你可以喜欢的Python,也可以喜欢R ,但他们只能选择一个,数据科学家的选择会一个不错的决定。


Ruby


Ruby面临着来自JavaScript甚至Python的激烈竞争,后两者也一样可以开发后端Web。因此,对于Web开发使用JavaScript和Python(服务器端Flask,Django等)是一个不错的选择,并将提供比Ruby更多的灵活性。


PHP


在2019年,PHP流行度有所下降,主要是服务器端对JavaScript和Python的接受程度越来越大。但如果你想要进行服务器端Web开发,可以使用PHP大量的开源软件以及流行的框架(如CakePHP,Codeigniter,Laravel等)来使用PHP 。


OBJECTIVE-C


在Apple迁移到Swift语言之前,Objective-C是Apple软件开发的主要语言,如macOS,iOS等。受官方的影响,Objective-C的受欢迎程度下降,而Swift的普及正在上升。所以,如果想成为Apple产品的开发者,Swift是首选语言。


语言起源2017年20182019
Swift
20146.5%8.3%6.6%
Go2009年4.3%7.2%8.2%
Kotlin2011Google支持4.7%6.4%
Scala
20033.6%4.5%3.8%
Juila2012  -  -  -
C#2001年34.1%34.4%31.0%
Rust
2010  -  -3.2%
Clojure2007年-  -1.4%


总结&观察:


Swift


Swift取代了Objective-C作为Apple相关软件和应用开发的主要语言。由于苹果支持和推广它,因此受欢迎程度越来越高,所以如果有人想开发Apple的平台的软件,那么Swift将成为一种必须了解的语言。这个语言是供应商和产品特定的语言,在Apple的生态系统外使用率非常低。


Go


Go(Golang)越来越受到Google的支持、维护与推广。Go开发的动机是解决对一些流行语言的缺点,并希望保持最佳状态。从2017年以来,Go的受欢迎程度越来越高,在谷歌的支持下,在未来几年内会更加提升。谷歌会将Go作为新项目的主要语言,并希望用Go取代其他语言,这种趋势在未来几年会所有体现,对于开发者来说也非常重要。因此人们可以选择Go作为编程语言学习。


Kotlin


Kotlin正在作为一种替代Java的Android开发语言。它也是谷歌支持和推动的语言之一,近年来也在开发者中越来越受到欢迎。随着Android系统的增长,Google的支持,凭借其简洁的语法,它成为Android 开发人员的一个优良选项。用不了多久,Kotlin将成为Android 开发的优秀编程环境。


Scala


Scala试图成为Java的替代品,但在开发人员中间并未得到很好的反映。它没有任何跨国公司的大力支持,其被认为是一种函数式语言,对JVM的依赖,并没有提供太大的普及范围。它可能会有稳定的增长,但速度很慢,可以肯定,它并不适合初学者学习。


Julia


Julia旨在提高“C”的速度和Python的简单性。但奇怪的是,在Stackoverflow 调查中没有任何数据表明其流行度,但它却在数据科学领域受到追捧,从长远来看可能是R和Python的挑战者。Julia一定会有所增长,但是,Python 或 R 更适合工作和成长。


C#


C#是.NET框架的语言,由微软开发。它的受欢迎程度在过去几年中基本没有太多变化,并将继续保持类似的趋势。这是因为特定于软件供应商的语言,如果你是在Microsoft开发环境中工作,可以选择此语言。最近,微软已将.NET开源,因此会出现一些上升趋势,但是由于其是特定于软件供应商,可能不会有特别大的提升。


Rust


Rust、Clojure等语言具有一定的用户基础,但是那种不那么流行的语言,因为也不会有特别大的人气上升。


一张图片抵千言万语


要了解最顶级的编程语言增长的趋势和图表,我们可以通过以下图表来了解它。


图1和图2给出了一个非常清晰的描绘,在旧的语言技术栈中,JavaScript远远领先于其它语言,并且在Web开发中还占据了一席之地,然后C和C++兄弟联手竞争与Java非常接近。


Python受欢迎程度上越来越高。在过去的5年里,只有它是人气不断增加的语言。虽然新语言层出不穷,但大多数语言都由跨国公司如微软、谷歌和苹果等巨头支持。


人们最想要学习的语言


编程语言2015年20162017年20182019
Rust
73.879.173.178.983.5
Kotlin00075.172.6
Python66.662.562.768.073.1
Go
72.568.763.365.667.9
Swift77.672.163.965.169.2

从上面的表格看到结果很明显,Rust的粉丝在过去五年中不断增长,而 Swift正在失去开发人员的喜爱,而Python处于这两个语言之间,过去两年中Python已经获益良多。另一个有意思的结果是,5个最喜爱的语言中有4种来自2000年后的群体,只有Python是较旧的语言,而Kotlin是从2017年才出现的Android 开发新语言。


编程语言2015年20162017年20182019
JavaScript15.411.918.619.017.8
Python14.813.320.625.125.7
Java10.5-11.710.58.3

从上表可以看出,过去几个中JavaScript和Python开发需求在不断增长,这反映了人们对语言的热爱。Java的使用数量急剧下降,这是因为Kotlin已经成为Android应用开发的替代品,还有一个重要原因是,拥有Java的Oracle公司又改变了政策。


技术与编程语言

在这个图中,我们可以看到最大的集群是Web开发和JavaScript的和JS的各种框架,这些东西称霸集群,这体现出JavaScript的急据增长。


第二大集群是Microsoft 技术和Python 技术,它再次证明了对Python语言的欢迎和热爱。Python集群与大数据、AI技术密切关联,这些技术加速了Python的增长。


TIOBE指数


TIOBE 编程语言索引基于搜索引擎结果,搜索引擎和编程语言的选择在其页面中定义。通过计算最受欢迎的搜索引擎的点击来计算评级。使用的搜索查询是+“<language> programming”。


在 TIOBE索引中, Java在过去二十年中占据主导地位,其中 C在过去30年中一直保持着第一和第二的位置。在过去的二十年里, Python走过了一段漫长的道路,从1999年的第24位,到2019年的第3位。但如果有人合并 C和 C ++语言,那么它将永远占据第一的位置。


在新的编程语言(2000年后)中,Rust的排名明显上升,从第33位升至第28位,Julia从第50位升至第39位。值得留意的是,Kotlin 语言似乎并未到过前20名。


编程语言(PYPL)索引排行榜


PYPL指数是通过谷歌中分析搜索某个语言教程的创建的。搜索该语言教程越多,那么该语言就越受欢迎,这的确是一个领先的指标,其原始数据来自Google趋势。


下图说明了PYPL排行的前3种语言为Python、Java和JavaScript。另外C#、PHP、C/C ++也是较稳定前几名位置,这个排行榜趋势与StackOverflow和TIOBE索引很像。


我们看上图显示,在新的编程语言序列中,即2000年后的Kotlin、Go、Rust和Julia在排名中在上升。


就业市场与薪酬


薪酬与产品的地理区域和需求息息相关,基于编程语言的薪资比较只是预测或估计薪资趋势的工具。


我们根据流行调查汇总了编程语言的薪资排行,其依据为2018年的Dice薪资调查和2018年和2019年的Stack-overflow调查。如下表格:


编程语言骰子工资调查(2018年)堆栈溢出调查(2018年)堆栈溢出调查(2019年)
Go$ 132,827$ 66K$ 80K
Perl的$ 110,678$ 69KNA
Shell$ 109,518$ 63K$ 69K
Node.js JavaScript $ 105,418$ 55K$ 56K
在Java / J2EE $ 105,164NA$ 52K
TypeScript $ 103,680$ 60K$ 60K
Pyt$ 103,587$ 56K$ 63K
红宝石102,086美元$ 64K$ 75K
迅速$ 101,631$ 57K$ 59K
C#$ 101,566$ 59K$ 59K

我们从上表可以看到,两项调查中Go/Golang在市场上是薪酬最高的职位,在2019年的StackOverflow调查和2018年Dice薪资调查中,在高薪工作中长期排名第一。


编程语言可预测性


那么,作为结束语,通过数据是很容易预测语言的趋势的,但如果只想选一门语言学习将是一个非常艰难的决定,这取决于个人喜好和严谨的计划。比如,你是从事Web开发就不能忽视JavaScript;如果你想使用Apple产品就不能忽视Swift;如果你的口味是系统级编程,那么C/C++就是你的朋友,Python让你在诸多领域跑得很快,尤其现在热火的数据科学。


每种语言都会带您走上不同的美好旅程。选择好目的地,然后用这门语言纵横天下!


编译:洛逸,21CTO社区创始人。

原作:Ajit Kumar



21CTO学院PHP全栈工程师训练营开始招生啦


做了几年21CTO技术社区,又创业写了好几本书。直到心里有非常富足的信心,从社区的链接到O2O培训了。


下面我开始播送广告:


21CTO学院PHP全栈开发训练营正在招生中,由我亲自授课,座位有限。报名即有机会进入一线互联网公司。相信我的,学真本事,练真项目,做真产品。欢迎各位童鞋推荐&报名、速度联系我哦~


详情请您点击>>


相关阅读:


2019年9月数据库系统排名与趋势

万年不变的 Top3 终于变了,6 月编程语言排行榜

PYPL 二月榜单发布:最受欢迎的编程语言、IDE 和数据库都是哪些?


Modified on

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存